1. Field of the Invention
The present invention relates to a program development support system for integrally managing a variety of information (resource information) for use in creating programs, program documents and so on in developing computer programs.
2. Description of the Related Art
In developing computer programs, there may be employed a variety of information such as source programs, functional design packages, function specification, module structure drawings, table link figures, call link figures, and so on. Hitherto, each of these information has been managed as a file, fox example, by dividing an element structuring a source program into a module and a function unit, and associating a function specification corresponding to the function with the name of the specification of the function described in the file of the function. There is known a program development support system that can be managed in this way.
A software development system disclosed in Japanese Patent Publication (Kokai) No. 2-181,224 is known as a system for managing programs and specification information thereof by linking them to each other. The system of the type disclosed therein comprises extracting program information or specification information from a program entered in a given type and a module specification, storing it in a database and creating a source program and the specification information from the information stored therein.
In the prior art system, those information applicable to the development of programs are managed as files. Therefore, when individual programmers create function specifications and so on by utilizing program development tools such as editors and so on which the programmers can readily utilize, the specifications created by those tools are managed as files of formats that can be understood by the tools. When the specifications are managed as files in the manner as described hereinabove, the files created by those tools cannot be directly referred to by other tools unless the other tools be changed to recognize the formats of the files and read the formats thereof.
The information managed by the prior art system includes source programs and specifications. On the other hand, the information, such as tools to be employed by programmers, names of the programmers and so on, is not managed uniformly by linking them to the source programs and specifications.
Therefore, for example, when a specification is to be changed, there may occur the situation that the tool used for creating the specification cannot be identified and the specification may be changed by a different tool, thereby resulting in change of a format of the specification different from the original format before renewal. Further, as the prior art system does not manage the names of the programmers involved in the development of the program as data by linking it to a source program handled by the programmers, there may be the case that a person responsible for the development of the program feels it very difficult to manage or may not manage which programmers are in charge of which part of the program, particularly when the program is being developed by a large number of programmers or when programmers change often.
Further, hitherto, a unit for managing a source program is a module or function unit so that it is possible to identify a function that may be influenced when a certain function is changed. However, the problem may arise that no location of change is identified, for example, when a name of a variable is changed and a scope which may be influenced is to be located.
Furthermore, even if the prior art system links a source program to a specification, a function in a specification or the source program by a name of the function, no definition is made of which link has what kind of meaning, i.e. a kind of the link. Therefore, although it is possible to distinguish a function specification corresponding to a certain link and identify it, it is impossible to identify a processing to be made for the function specification linked when the function is renewed.
In the prior art system, further, when a source program is to be created, a user describes a specification of a function and creates the function from the described specification, combines the created function with a header, and stores data at each stage. Accordingly, if the user modifies the source program created in this manner, there are required to search for both the function acting as a create source of the source program and a description specification acting as a create source of the function and modify each of them.
In addition, the prior art system cannot register information of an undefined entity while holding a link to information of another entity. That the entity is undefined means that, when a function is taken as an example, it is called in another function while its contents are not defined. Therefore, a user is required to link the undefined resource to a defined and registered resource at the time when the entity of the undefined resource is defined.
When an entire software system is developed by several handling persons, the system is divided into small portions and they are assigned to each of the handling persons. When the development of the portions has been finished, they are gradually combined one by another, followed by confirmation as to whether the combined portions can be operated in a given way as the system is intended to work. However, such a conventional process suffers from the difficulty that, if the portions would be combined prior to the completion of development work by the handling persons, a test cannot be done for the purposes intended to be done, due to a failure by a handling person who yet finishes developing the portion of the system or a time is lost wastefully until the entire system has finally been developed.